#pragma once



class  stone
{
public:
	stone() :_w(0), _h(0), _weight(0) {}
	stone(int w, int h, int we) :_w(w), _h(h), _weight(we) {}
	~stone();

	bool operator < (const stone& rhs) const
	{
		return _weight < rhs._weight;
	}

private:
	int _w, _h, _weight;
};


stone::~stone()
{
}


template <class T>
inline
const T& min(const T& a, const T& b)
{
	return b < a ? b : a;
}
 